Dynamic inference of polymorphic lock types
نویسندگان
چکیده
We present an approach for automatically proving the absence of race conditions in multi-threaded Java programs, using a combination of dynamic and static analysis. The program in question is instrumented so that when executed it will gather information about locking relationships. This information is then fed to our tool, FindLocks, that generates annotations needed to type check the program using the Race-Free Java [12] type system. Our approach extends existing inference algorithms by being fully context-sensitive. We describe the design and implementation of our approach, and our experience applying the tool to a variety of Java programs. We have found the approach works well, but has trouble scaling to large programs, which require extensive testing for full coverage.
منابع مشابه
Simple Type Inference for Structural Polymorphism
We propose a new way to mix constrained types and type inference, where the interaction between the two is minimal. By using local constraints embedded in types, rather than the other way round, we obtain a system which keeps the usual structure of an Hindley-Milner type system. In practice, this means that it is easy to introduce local constraints in existing type inference algorithms. Eventho...
متن کاملPolymorphic Dynamic Typing
We study dynamic typing in continuation of Henglein’s dynamically typed λ-calculus, with particular regard to proof theoretic aspects and aspects of polymorphic completion inference. Dynamically typed λ-calculus provides a formal framework within which we can reason in a precise manner about properties of the process of completion for higher order programming languages. Completions arise from r...
متن کاملDesign Characteristics and Dynamic Modeling of a Cooperative Dual-Arm- Lock Manipulator
Recent developments in the area of smart structures indicate that variable geometry / stiffness truss network is of fundamental importance in designing smart transformable structures and systems for space applications. This paper presents the conceptual design and dynamic modeling of a cooperative re-configurabel dual-arm robotic structure called Dual-Arm Cam-Lock Manipulator. The Manipulator i...
متن کاملDesign Characteristics and Dynamic Modeling of a Cooperative Dual-Arm- Lock Manipulator
Recent developments in the area of smart structures indicate that variable geometry / stiffness truss network is of fundamental importance in designing smart transformable structures and systems for space applications. This paper presents the conceptual design and dynamic modeling of a cooperative re-configurabel dual-arm robotic structure called Dual-Arm Cam-Lock Manipulator. The Manipulator i...
متن کاملType inference for polymorphic methods in Java-like languages
In mainstream class-based object-oriented languages with nominal types, like C++, Java and C#, typechecking algorithms require methods to be annotated with their parameter types, which are either fixed or constrained by a (nominal) bound. On the contrary, languages like ML, CaML and Haskell use powerful type inference algorithms capable of calculating the type for a function in which parameter ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Sci. Comput. Program.
دوره 58 شماره
صفحات -
تاریخ انتشار 2005